import asyncio


async def main():
    # 创建事件循环（在3.7版本之后，你可以使用asyncio.run(main())来自动创建事件循环）
    loop = asyncio.get_event_loop()

    # 使用loop创建一个Future
    future = loop.create_future()

    # 假设我们有一个异步任务，完成后会设置future的结果
    async def set_future_result():
        await asyncio.sleep(2)  # 模拟耗时操作
        print("Task completed, setting result.")
        future.set_result("Task finished")

    # 启动异步任务
    asyncio.ensure_future(set_future_result())

    # 等待Future完成
    result = await future
    print(f"Future result: {result}")


# 运行main函数
asyncio.run(main())
